xen.git
20 years agoMake time-backwarsd warning a run-time configurable option.
kaf24@firebug.cl.cam.ac.uk [Mon, 13 Mar 2006 12:03:18 +0000 (13:03 +0100)]
Make time-backwarsd warning a run-time configurable option.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoThe existing xc_domain_dumpcore is very specific to disk/file based
kaf24@firebug.cl.cam.ac.uk [Mon, 13 Mar 2006 10:47:56 +0000 (11:47 +0100)]
The existing xc_domain_dumpcore is very specific to disk/file based
output.  Refactor the code slightly to allow more user-specified
control.  This is done by adding a parallel
xc_domain_dumpcore_via_callback, which allows the specification of a
callback routine and an opaque argument block.  The existing dumpcore
routine is modified to use the callback for all write operations and
to turn the single seek into a small write (it's for page alignment).

Signed-off-by: Ben Thomas <bthomas@virtualiron.com>
20 years agoxm top was listed twice in the help message -- remove it from the Host Commands
emellor@leeni.uk.xensource.com [Mon, 13 Mar 2006 10:10:27 +0000 (11:10 +0100)]
xm top was listed twice in the help message -- remove it from the Host Commands
section, leaving it in the Domain Commands section.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoFix broken assertion in SEDF scheduler.
kaf24@firebug.cl.cam.ac.uk [Mon, 13 Mar 2006 09:49:45 +0000 (10:49 +0100)]
Fix broken assertion in SEDF scheduler.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoNo need to pin/unpin intermediate pagetables in x86/64 xenlinux.
kaf24@firebug.cl.cam.ac.uk [Sun, 12 Mar 2006 18:37:38 +0000 (19:37 +0100)]
No need to pin/unpin intermediate pagetables in x86/64 xenlinux.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoIgnore pinning of other than root page directories. Disallow
kaf24@firebug.cl.cam.ac.uk [Sun, 12 Mar 2006 18:37:00 +0000 (19:37 +0100)]
Ignore pinning of other than root page directories. Disallow
creation of pagetables with 'va_unknown' page-directory backptrs.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAdd missing include of a header file to avoid a compile warning.
kaf24@firebug.cl.cam.ac.uk [Sun, 12 Mar 2006 09:03:33 +0000 (10:03 +0100)]
Add missing include of a header file to avoid a compile warning.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agopciback sends evtchn notification to pcifront when its request is processed.
kaf24@firebug.cl.cam.ac.uk [Sun, 12 Mar 2006 08:52:19 +0000 (09:52 +0100)]
pciback sends evtchn notification to pcifront when its request is processed.
This may in future allow pcifront to avoid spin-waiting.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMerged.
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 14:40:33 +0000 (15:40 +0100)]
Merged.

20 years agoRemove blank line -- this was causing all the tests to be run twice, because
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 14:40:26 +0000 (15:40 +0100)]
Remove blank line -- this was causing all the tests to be run twice, because
the blank line is interpreted as running make check in tests/.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoMerged.
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 10:53:22 +0000 (11:53 +0100)]
Merged.

20 years agoDefine TESTS to be the .test files, not the .py files, otherwise the chmod +x
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 10:52:40 +0000 (11:52 +0100)]
Define TESTS to be the .test files, not the .py files, otherwise the chmod +x
doesn't get called.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoHG Patch
root@dyn9047022116.beaverton.ibm.com [Sat, 11 Mar 2006 10:46:38 +0000 (11:46 +0100)]
HG Patch

Add feature to layer xm-test tests, grouping of tests by casename and
execution of tests by user specified lists.

Signed-off-by: Woody Marvel <marvel@us.ibm.com>
20 years ago- Reworked to use your match_domid suggestion and filtering
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 10:45:10 +0000 (11:45 +0100)]
- Reworked to use your match_domid suggestion and filtering
- Aligned output and help to fit within 80 char limit
- User now deals in milliseconds instead of nanoseconds
- Fixed some missing parens in tests (I had pushed stale versions)
- Updated tests to deal with period/slice/latency in ms

root@bebop:~/xm-test.sedf/tests/sedf # xm sched-sedf
Name                              ID Period(ms) Slice(ms) Lat(ms) Extra Weight
Domain-0                           0      20.0      15.0     0.0      1      0

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
20 years agoMerged.
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 10:20:32 +0000 (11:20 +0100)]
Merged.

20 years agoTrivial fix to bind implementation.
emellor@leeni.uk.xensource.com [Sat, 11 Mar 2006 10:19:11 +0000 (11:19 +0100)]
Trivial fix to bind implementation.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoChangeset 9134 introduced a caching mechanism when xenbus_switch_state
kaf24@firebug.cl.cam.ac.uk [Sat, 11 Mar 2006 09:49:28 +0000 (10:49 +0100)]
Changeset 9134 introduced a caching mechanism when xenbus_switch_state
is invoked. This causes a problem in the resume part of a suspend-resume
cycle due to the backend not seeing that a state in the frontend was
set. This patch fixes this in the TPM frontend driver.

Signed-off-by: Stefan Berger <stefanb@us.ibm.com>
20 years ago Currently if one tries to execute VMX instruction from inside the
kaf24@firebug.cl.cam.ac.uk [Sat, 11 Mar 2006 09:47:55 +0000 (10:47 +0100)]
 Currently if one tries to execute VMX instruction from inside the
VMX guest, the Xen hyper visor has no handling of it resulting in a
bug(). This patch handles such VMX instructions from the guest returning
invalid opcode to the guest. Also the macro VMX_INVALID_ERROR_CODE is
renamed to the more meaningful VMX_DELIVER_NO_ERROR_CODE.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
Signed-Off-By: Jun Nakajima <jun.nakajima@intel.com>=20
20 years agoEnable the ejection of the physical cdrom tray, when user enters
kaf24@firebug.cl.cam.ac.uk [Sat, 11 Mar 2006 09:44:48 +0000 (10:44 +0100)]
Enable the ejection of the physical cdrom tray, when user enters
"eject cdrom" in the control console of a VMX guest.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
20 years agoMore build config changes:
kaf24@firebug.cl.cam.ac.uk [Fri, 10 Mar 2006 16:32:04 +0000 (17:32 +0100)]
More build config changes:
 - Build -O2 rather than -O3
 - Build with -Wstrict-prototypes
 - Move target-specific generic compiler switches to Config.mk

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoReplace memory_op subcommands reserved_phys_area and map_shared_info
kaf24@firebug.cl.cam.ac.uk [Fri, 10 Mar 2006 15:00:36 +0000 (16:00 +0100)]
Replace memory_op subcommands reserved_phys_area and map_shared_info
with new subcommand add_to_physmap.

This changes the domain0 tools interface, but only when building
shadow-translate-mode guests.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMap grant table pages in vmalloc kernel address space instead of fixmap.
cl349@firebug.cl.cam.ac.uk [Fri, 10 Mar 2006 13:27:24 +0000 (13:27 +0000)]
Map grant table pages in vmalloc kernel address space instead of fixmap.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
20 years agoMinor fix to error message.
emellor@leeni.uk.xensource.com [Fri, 10 Mar 2006 10:47:24 +0000 (11:47 +0100)]
Minor fix to error message.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoSimplify the interface into httpserver and UnixHttpServer -- the root and
emellor@leeni.uk.xensource.com [Fri, 10 Mar 2006 10:44:03 +0000 (11:44 +0100)]
Simplify the interface into httpserver and UnixHttpServer -- the root and
interface parameters are always used, so there's no need for them to be named
parameters with defaults.

Remove unused httpserver.getRoot and getPort, and simplify the main request
loop.  This means that socket errors do not have to be squelched.

Coalesce the two identical bind methods, one in UnixHttpServer, one in
UnixListener.  Fix this bind method to set the permissions on the socket
explicitly.  This closes a security hole, and fixes the intermittent failure
of xm-test/06_list_nonroot.test.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoUntangle XendRoot and XendLogging by having XendLogging check the global
emellor@leeni.uk.xensource.com [Fri, 10 Mar 2006 10:38:15 +0000 (11:38 +0100)]
Untangle XendRoot and XendLogging by having XendLogging check the global
params.XEND_DEBUG value itself.  This removes the need for addLogStderr and
removeLogStderr.  Remove the maxBytes and backupCount parameters to init, as
they are unused and we only use the hardcoded values anyway.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoThe attached patch cleans up the parsing of /proc/xen/balloon that
emellor@leeni.uk.xensource.com [Fri, 10 Mar 2006 10:05:59 +0000 (11:05 +0100)]
The attached patch cleans up the parsing of /proc/xen/balloon that
occurs in xend.  Currently, the parsing is hard-coded; it expects that
the desired number is on the first line.  My patch is more robust; it
lets values be retrieved by a label.  It also exposes a few functions to
retrieve the current allocation and the target allocation.

By abstracting this a little better, I'll be able to address a few
other issues in subsequent patches.  Mostly, this allows for better
error checking and guidance for the user.  For example, by exposing
get_dom0_current_alloc(), we can (elsewhere, in a later patch) calculate
how large of a VM could potentially be started.  This is useful, as it
lets simple VM-creation GUIs guide the user towards reasonable memory
values for new VMs.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
20 years agoFix test 11_create_concurrent_ps.py for HVM domains. HVM can only
stekloff@elm3b216.beaverton.ibm.com [Fri, 10 Mar 2006 09:54:25 +0000 (10:54 +0100)]
Fix test 11_create_concurrent_ps.py for HVM domains. HVM can only
load as many disk.img domains as there are loop devices. Added a
small function to get number of loop devices to be used as a max
for number of concurrent domains the test launches.

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
20 years agoClean the pending_intr processing sequence and fix some potential bugs.
kaf24@firebug.cl.cam.ac.uk [Fri, 10 Mar 2006 08:12:22 +0000 (09:12 +0100)]
Clean the pending_intr processing sequence and fix some potential bugs.

Signed-off-by: Eddie Dong <eddie.dong@intel.com>
Signed-off-by: Xiaowei Yang <xiaowei.yang@intel.com>
20 years agoFix the gdbserver-xen for VMX guests.
kaf24@firebug.cl.cam.ac.uk [Fri, 10 Mar 2006 08:11:33 +0000 (09:11 +0100)]
Fix the gdbserver-xen for VMX guests.

Signed-Off-By: Nitin A Kamble <nitin.a.kamble@intel.com>
20 years agoThis patch
emellor@leeni.uk.xensource.com [Fri, 10 Mar 2006 00:08:59 +0000 (01:08 +0100)]
This patch

-Displays current parameters for running domains ala xm list
-Allow users to set one or more parameters without having to
 provide values for parameters they do not wish to change
-Adds additional testing of sched-sedf via new xm-test testcases.

With this patch applied, test 02_sedf_period_lower_neg.py exposes a
bug.  I'll follow up this email with a patch for the bug.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
20 years agoAdding hping TCP and UDP tests. They hping a number of packets to
stekloff@localhost.localdomain [Thu, 9 Mar 2006 23:49:54 +0000 (00:49 +0100)]
Adding hping TCP and UDP tests. They hping a number of packets to
local interface, dom0, and from domU to domU. HVM support included.

Signed-off-by: Jim Dykman <dykman@us.ibm.com>
Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
20 years agoFix xmtest 13_create_multinic_pos.py to work with HVM.
stekloff@elm3b216.beaverton.ibm.com [Thu, 9 Mar 2006 23:49:08 +0000 (00:49 +0100)]
Fix xmtest 13_create_multinic_pos.py to work with HVM.

Signed-off-by: Daniel Stekloff <dsteklof@us.ibm.com>
20 years agoFix a few small issues in xc_domain_dumpcore:
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 22:07:27 +0000 (23:07 +0100)]
Fix a few small issues in xc_domain_dumpcore:

xc_domain_getinfo returns information about a domain, but not
necessarily the one you asked about.  Add check for this.

max_vcpu_id in xc_domain_getinfo is really an ID, not a count, so
make the loop include the last VCPU

Signed-off-by: Ben Thomas <ben@virtualiron.com>
20 years agoMove 'debug' build option into the outermost Config.mk file.
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 21:31:45 +0000 (22:31 +0100)]
Move 'debug' build option into the outermost Config.mk file.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoClean up the usage of CFLAGS. This is nice for packagers, who would
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 20:17:45 +0000 (21:17 +0100)]
Clean up the usage of CFLAGS.  This is nice for packagers, who would
like to control the base compilation flags from a central place.

Signed-off-by: Charles Coffing <ccoffing@novell.com>
20 years agoChange the location of the shared_info page for auto_translated_physmap guests.
cl349@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 16:24:57 +0000 (16:24 +0000)]
Change the location of the shared_info page for auto_translated_physmap guests.
Instead of putting the page outside of the guests pseudo-physical address
space, we put it next to the other pages filled by the domain builder,
such that the page is already mapped in the initial pagetables and/or a
lowmem-type memory mapping.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
20 years agoBuild MTRR support into privileged xenlinux x86/64.
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 15:03:23 +0000 (16:03 +0100)]
Build MTRR support into privileged xenlinux x86/64.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoApply proper locking in xenlinux mtrr interface functions.
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 14:59:53 +0000 (15:59 +0100)]
Apply proper locking in xenlinux mtrr interface functions.

From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xensource.com>
20 years ago64 bit pagetable builder added to mm.c
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 14:57:32 +0000 (15:57 +0100)]
64 bit pagetable builder added to mm.c
Signed-off-by: Aravindh Puthiyaparambil
<aravindh.puthiyaparambil@unisys.com>
Signed-off-by: Grzegorz Milos <gm281@cam.ac.uk>
20 years agoExplain disadvantages of building pciback as a module in Kconfig help.
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 14:56:12 +0000 (15:56 +0100)]
Explain disadvantages of building pciback as a module in Kconfig help.
Fix a module-loading bug in pciback.

From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMake xc_linux_build() load the initrd page-by-page rather
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 14:16:35 +0000 (15:16 +0100)]
Make xc_linux_build() load the initrd page-by-page rather
than all in one go, to conserve memory. This always has been
the behaviour, but it was changed by a changeset earlier today.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoClean up internal libxc functions to take 'const char *'
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 13:35:36 +0000 (14:35 +0100)]
Clean up internal libxc functions to take 'const char *'
parameters where possible, to avoid unnecessary casts.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAdd a parallel set of APIs to the domain builders to allow images and
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 12:00:38 +0000 (13:00 +0100)]
Add a parallel set of APIs to the domain builders to allow images and
ramdisks to be passed via buffer, rather than via file.  This allows
usage of the underlying domain building routines in "file-challenged"
enviroments.

Specifically, xc_linux_build_mem is the buffer oriented version of the
file-oriented xc_linux_build.  Likewise, xc_hvm_build_mem is the
buffer oriented analog of the file based xc_hvm_build.

Signed-off-by: Ben Thomas (bthomas@virtualiron.com)
20 years agoAdds a new device interface to xend/xm similar to the one for ioports
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 10:20:31 +0000 (11:20 +0100)]
Adds a new device interface to xend/xm similar to the one for ioports
where an interrupt (irq) can be specified in the configuration file
and permission to bind to that interrupt will be given to a driver
domain.

This functionality could be used when trying to give a legacy device
to a driver domain. For example, by specifying the i/o ports and the
interrupt of your serial controller, you can use this patch to put a
serial port in a driver domain. This was discussed briefly on
xen-users in regards to using an external modem in a domU:

http://article.gmane.org/gmane.comp.emulators.xen.devel/20573
http://article.gmane.org/gmane.comp.emulators.xen.user/8754

Also adds the ability to specify irqs on the xm command-line when
creating a domain (the following examples show a serial port being
given to a domU):

xm create serial-dd irq=4 ioports=03f8-03ff

or in a flat config-file:

irq = [4]
ioports = ['03f8-03ff']

or in an SXP config file:

(device (irq (irq 4)))
(device (ioports (from '0x03f8')(to '0x03ff')))

The ioports functionality is already in xen, but this patch also fixes a
bug with it that I assume cropped up due to changes in xend since it was
submitted ('dev' doesn't exist in iopif.py, returning 'None' seems to be
the solution).

Also adds some in-line documentation in tools/python/xen/xm/create.py
to be more accurate regarding adding pci devices and i/o ports on the
command-line.

Signed-off-by: Ryan Wilson <hap9@epoch.ncsc.mil>
20 years agoAccording to the April 2005 Intel Virtualization Technology Specification
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 10:17:29 +0000 (11:17 +0100)]
According to the April 2005 Intel Virtualization Technology Specification
(Appendix A1) indicates that there are 44 potential exit reason codes.
Based upon this, increase the size of the PERFCOUNTER_ARRAY for vmexits.

Signed-off-by: Ben Thomas (bthomas@virtualiron.com)
20 years agoFix order-of-evaluation issue in xc_domain_dumpcore. The intent is
kaf24@firebug.cl.cam.ac.uk [Thu, 9 Mar 2006 10:16:46 +0000 (11:16 +0100)]
Fix order-of-evaluation issue in xc_domain_dumpcore.  The intent is
to move blocks of memory 4096 pages at a time, and a buffer is
allocated for this.  Unfortunately, the #define is without
parentheses and %/* are the same order and evaluated left to right.
Result: very big buffer being used 4 pages at a time.

Signed-off-by: Ben Thomas (bthomas@virtualiron.com)
20 years agoClean up the interface for sharing xen-heap pages with guests.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 23:45:40 +0000 (00:45 +0100)]
Clean up the interface for sharing xen-heap pages with guests.
Map trace buffer pages as DOMID_XEN pages.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAdd missing include in hypercalls header file.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 23:04:43 +0000 (00:04 +0100)]
Add missing include in hypercalls header file.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAllow pciback to be built as a module.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 17:41:12 +0000 (18:41 +0100)]
Allow pciback to be built as a module.

From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAllow pciback to be placed into a permissive mode of operation whereby it allows
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 16:32:36 +0000 (17:32 +0100)]
Allow pciback to be placed into a permissive mode of operation whereby it allows
PCI config writes to succeed by default. Currently this is the only way to allow
control of a device that has device-specific registers in the config space from
a driver domain.

echo Y >/sys/module/pciback/parameters/permissive

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoTrivial fix for pcifront bringup.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 14:51:28 +0000 (15:51 +0100)]
Trivial fix for pcifront bringup.

From: Jan Beulich
Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoFix call to set_timer in vlapic.c. Should not set timer.expires
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 14:49:04 +0000 (15:49 +0100)]
Fix call to set_timer in vlapic.c. Should not set timer.expires
outside set_timer, since set_timer will do that for the caller.

Signed-off-by: Xin Li <xin.b.li@intel.com>
20 years agoImplement guest_access routines for copying to/from a sub-field of a structure.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 14:39:59 +0000 (15:39 +0100)]
Implement guest_access routines for copying to/from a sub-field of a structure.
Use this as part of a tidy-up of the multicall hypercall.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoUndo misapplied search replace.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 14:35:14 +0000 (15:35 +0100)]
Undo misapplied search replace.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoLower-casify some macros, and rename kernel_mode() to guest_kernel_mode().
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 14:02:43 +0000 (15:02 +0100)]
Lower-casify some macros, and rename kernel_mode() to guest_kernel_mode().
Fix the macro so that it evaluates false if the given register context is
not a valid guest context.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoUpdate Xen extraversion to reflect unstable status.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:54:48 +0000 (11:54 +0100)]
Update Xen extraversion to reflect unstable status.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoThe PAE guest can run on SMP 64-bit Xen0 now.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:53:39 +0000 (11:53 +0100)]
The PAE guest can run on SMP 64-bit Xen0 now.

Optimize the save/restore action for EFER MSR during the context switch.

Signed-off-by: Jun Nakajima jun.nakajima@intel.com
Signed-off-by: Xiaohui Xin xiaohui.xin@intel.com
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
20 years agoKeep totalram_pages in sync with current_pages in balloon driver.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:51:17 +0000 (11:51 +0100)]
Keep totalram_pages in sync with current_pages in balloon driver.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAdd some bounds checking to values passed when changing the period and
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:48:34 +0000 (11:48 +0100)]
Add some bounds checking to values passed when changing the period and
slice of a domain using the sedf scheduler.

Signed-off-by: Ryan Harper <ryanh@us.ibm.com>
20 years agoEnsure old Python files are overwritten during tools install.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:18:39 +0000 (11:18 +0100)]
Ensure old Python files are overwritten during tools install.

Signed-off-by: Akio Takebe <takebe_akio@jp.fujitsu.com>
20 years agoFix 64-bit Linux build.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 10:11:53 +0000 (11:11 +0100)]
Fix 64-bit Linux build.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoFix up #PF error code before propagating to guest kernel.
kaf24@firebug.cl.cam.ac.uk [Wed, 8 Mar 2006 09:33:31 +0000 (10:33 +0100)]
Fix up #PF error code before propagating to guest kernel.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoClean up vlapic code.
kaf24@firebug.cl.cam.ac.uk [Tue, 7 Mar 2006 17:41:37 +0000 (18:41 +0100)]
Clean up vlapic code.

Signed-off-by: Xin Li <xin.b.li@intel.com>
Signed-off-by: Yunhong Jiang <yunhong.jiang@intel.com>
20 years agoUpgrade all hypercalls to use the new guest_handle interface (on the Xen side).
kaf24@firebug.cl.cam.ac.uk [Tue, 7 Mar 2006 17:40:42 +0000 (18:40 +0100)]
Upgrade all hypercalls to use the new guest_handle interface (on the Xen side).

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoCleanup i386 entry.S.
cl349@firebug.cl.cam.ac.uk [Tue, 7 Mar 2006 15:48:36 +0000 (15:48 +0000)]
Cleanup i386 entry.S.
Many of the changes to entry.S can be removed because we don't support
CONFIG_PREEMPT anymore.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
20 years agoTighten up the assertion conditions in the GUEST_MODE() macro.
kaf24@firebug.cl.cam.ac.uk [Tue, 7 Mar 2006 13:40:23 +0000 (14:40 +0100)]
Tighten up the assertion conditions in the GUEST_MODE() macro.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoSVM patch to add missing svm_asid() call into 64bit exits.S vmexit loop.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 22:50:30 +0000 (23:50 +0100)]
SVM patch to add missing svm_asid() call into 64bit exits.S vmexit loop.

Signed-off-by: Tom Woller <thomas.woller@amd.com>
20 years agoFix additional gdbstub issues.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 22:49:48 +0000 (23:49 +0100)]
Fix additional gdbstub issues.
- gdbstub.h uses atomic_t and PAGE_SIZE, so include those headers
- do not lie about setting breakpoints
- fix memory writing

Signed-off-by: Hollis Blanchard <hollisb@us.ibm.com>
20 years agoAdd next/previous key bindings to XenMon curses mode.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 22:47:53 +0000 (23:47 +0100)]
Add next/previous key bindings to XenMon curses mode.

Signed-off-by: Diwaker Gupta <dgupta@cs.ucsd.edu>
20 years agoFix reporting of time intervals in the log mode of XenMon.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 22:47:14 +0000 (23:47 +0100)]
Fix reporting of time intervals in the log mode of XenMon.
Fix duration to sleep between iterations (earlier hardcoded to 1sec)
Signed-off-by: Diwaker Gupta <dgupta@cs.ucsd.edu>
20 years agoNo need to re-set vm_pgoff before calling remap_pfn_range(). It will do
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 19:29:39 +0000 (20:29 +0100)]
No need to re-set vm_pgoff before calling remap_pfn_range(). It will do
it itself in cases where it is necessary.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMake /proc/xen/xsd_kva with permissions 0600 so it can be opened
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 18:47:26 +0000 (19:47 +0100)]
Make /proc/xen/xsd_kva with permissions 0600 so it can be opened
for write access (and mmap()ed with write permissions).

Signed-off-by: Chris Wright <chrisw@sous-sol.org>
20 years agoSimplify ptrace_names array declaration.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 18:26:30 +0000 (19:26 +0100)]
Simplify ptrace_names array declaration.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoCleanup whitespace.
cl349@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 17:15:10 +0000 (17:15 +0000)]
Cleanup whitespace.

Signed-off-by: Christian Limpach <Christian.Limpach@cl.cam.ac.uk>
20 years agoFix build with some gcc versions.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 17:05:09 +0000 (18:05 +0100)]
Fix build with some gcc versions.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoUpdate microcode.c to linux-2.6.16-rc5 codebase.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 14:39:48 +0000 (15:39 +0100)]
Update microcode.c to linux-2.6.16-rc5 codebase.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAllow NMI watchdog setup on newer P4 processors.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 14:30:12 +0000 (15:30 +0100)]
Allow NMI watchdog setup on newer P4 processors.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agolibxc: Verify Magic number when reading dump
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 14:04:18 +0000 (15:04 +0100)]
libxc: Verify Magic number when reading dump

The xen core files record a magic number,
but when they are loaded it isn't checked.
This patch resolves this.

Signed-Off-By: Horms <horms@verge.net.au>
20 years agoFix boot-memory layout description.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 14:02:26 +0000 (15:02 +0100)]
Fix boot-memory layout description.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoConsolidate xc_ptrace and xc_ptrace_core
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 11:06:55 +0000 (12:06 +0100)]
Consolidate xc_ptrace and xc_ptrace_core

* xc_ptrace
  - Merge xc_ptrace_core into xc_ptrace
  - ATTACH now reads the data argument. If non-zero then
    a corefile is being debuged. Otherwise a thread has
    been attached to. This allows xc_waitdomain_core() or
    xc_waitdomain() to be called as appropriate in
    subsequent xc_ptrace() calls.
* xc_waitdomain
  - Rename xc_waitdomain (xc_ptrace.c version) __xc_waitdomain
  - Rename xc_waitdomain (xc_ptrace_core.c version) xc_waitdomain_core
  - Create xc_waitdomain (in xc_ptrace.c), a wrapper for __xc_waitdomain
    and xc_waitdomain_core.
  Consolidation seemed difficult but ctxt needs to be
  passed into xc_waitdomain_core or made global.
  Alternatively, xc_waitdomain_core could be moved into xc_ptrace.c,
  but this seems messy.
* map_domain_va
  - Rename map_domain_va (xc_ptrace_core.c version) map_domain_va_core
  - Have it accept ctxt, like xc_waitdomain_core
* myptrace and myxcwait (linux-xen-low.c)
  Removed, call the now generic xc_ptrace() and xc_waitdomain() instead

When calling xc_ptrace ATTACH, if a corefile is in use, a fd will
be passed, otherwise a pid. The fd part is important, as this
is saved internally in xc_ptrace_core.c, and passed to xc_waitdomain_core()
as neccessary. Pereviously xc_waitdomain_core() received a pid and
thus could not open the corefile.

Signed-Off-By: Horms <horms@verge.net.au>
20 years agolibxc: xc_ptrace cleanups
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 11:05:44 +0000 (12:05 +0100)]
libxc: xc_ptrace cleanups

General Cleanups
* Use { after if consistently in xc_ptrace.c and xc_ptrace_core.c
  (But not in xc_ptrace_core() which should be removed shortly)
* Remove duplicate code and centralise around xc_ptrace.h
* Avoid ifing values covered by case in xc_ptrace()
  - PTRACE_GETREGS, PTRACE_GETFPREGS and PTRACE_GETFPXREGS are grouped into
    a single case, and then with the exception of a call to FETCH_REGS(),
    different code is executed based on ifing the values covered by the
    case.  The PTRACE_GETFPREGS and PTRACE_GETFPXREGS code is actually a
    duplicate.  This patch breaks the code out to two different cases.

Error Handling
* Eliminate FETCH_REGS macro as it forces several functions
  to have an otherwise uneeded error_out label, mittigating
  any code savins.
* Rework error handling in xc_ptrace().
  - Remove FETCH_REGS as above
  - Make sure that all dom0 errors are caught
  - Make sure errno is always set on error
* Eliminate gotos in xc_ptrace_core.c that do nothing but return

Signed-Off-By: Horms <horms@verge.net.au>
20 years agoFix DBG_LEVEL_VLAPIC_INTERRUPT definition.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 10:04:37 +0000 (11:04 +0100)]
Fix DBG_LEVEL_VLAPIC_INTERRUPT definition.
It should be different from DBG_LEVEL_VLAPIC_TIMER.

Signed-off-by: Xin Li <xin.b.li@intel.com>
20 years agoFix ia64 build.
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 10:02:53 +0000 (11:02 +0100)]
Fix ia64 build.

Signed-off-by: Alex Williamson <alex.williamson@hp.com>
20 years agoFix mkelf32 cross compilation support. The previous fix for
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 10:01:43 +0000 (11:01 +0100)]
Fix mkelf32 cross compilation support. The previous fix for
this was misapplied by me.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoFix SVM guest destroy: I/O shared page is mapped globally so must unmap
kaf24@firebug.cl.cam.ac.uk [Mon, 6 Mar 2006 09:58:50 +0000 (10:58 +0100)]
Fix SVM guest destroy: I/O shared page is mapped globally so must unmap
with unmap_domain_page_global().

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMerged.
emellor@leeni.uk.xensource.com [Sat, 4 Mar 2006 18:16:36 +0000 (19:16 +0100)]
Merged.

20 years agoAllow callers to XendClient.xend_list_domains to specify the detail flag, and
emellor@leeni.uk.xensource.com [Sat, 4 Mar 2006 18:15:36 +0000 (19:15 +0100)]
Allow callers to XendClient.xend_list_domains to specify the detail flag, and
turn detail off when doing vcpu-list.  This avoids calls to xenstore just to
get the list of domains for the vcpu-list call, significantly increasing
performance of that command on loaded systems.

Closes bug #545.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoLog the tdb_error when a read fails with EIO. This is happening after a long
emellor@leeni.uk.xensource.com [Sat, 4 Mar 2006 18:12:37 +0000 (19:12 +0100)]
Log the tdb_error when a read fails with EIO.  This is happening after a long
time under load -- hopefully this message will suggest why.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoAdded a 'state' field to the xenbus_device structure, which caches the state
emellor@leeni.uk.xensource.com [Sat, 4 Mar 2006 18:10:56 +0000 (19:10 +0100)]
Added a 'state' field to the xenbus_device structure, which caches the state
at the local end of the xenbus connection (i.e. that value that is passed
through xenbus_switch_state).  This means that xenbus_probe can wait for all
the boot devices to become ready without having to hurt the store.

Also, fix this probing -- previously, the wrong value was being returned by
all_devices_ready_, so this polling would only have waited for one device.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoMake guest_access implementation arch-specific.
kaf24@firebug.cl.cam.ac.uk [Sat, 4 Mar 2006 09:32:10 +0000 (10:32 +0100)]
Make guest_access implementation arch-specific.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoFix some warnings when compiling tools.
kaf24@firebug.cl.cam.ac.uk [Sat, 4 Mar 2006 09:25:05 +0000 (10:25 +0100)]
Fix some warnings when compiling tools.

Signed-off-by: Xin Li <xin.b.li@intel.com>
20 years agoRename guest_handle() macro to GUEST_HANDLE() and define_guest_handle()
kaf24@firebug.cl.cam.ac.uk [Fri, 3 Mar 2006 18:21:48 +0000 (19:21 +0100)]
Rename guest_handle() macro to GUEST_HANDLE() and define_guest_handle()
to DEFINE_GUEST_HANDLE(). All caps for datatype declarations and
definitions got the popular vote. :-)

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years ago/proc/xen/xsd_kva exports mmap interface that xenstored now uses to map the
kaf24@firebug.cl.cam.ac.uk [Fri, 3 Mar 2006 18:07:55 +0000 (19:07 +0100)]
/proc/xen/xsd_kva exports mmap interface that xenstored now uses to map the
domain0 xenbus page.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoAvoid floating point in hash table implementation.
kaf24@firebug.cl.cam.ac.uk [Fri, 3 Mar 2006 18:06:50 +0000 (19:06 +0100)]
Avoid floating point in hash table implementation.

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMove dom0_op hypercall to the guest_handle interface (inside Xen).
kaf24@firebug.cl.cam.ac.uk [Fri, 3 Mar 2006 17:26:41 +0000 (18:26 +0100)]
Move dom0_op hypercall to the guest_handle interface (inside Xen).

Signed-off-by: Keir Fraser <keir@xensource.com>
20 years agoMerged.
emellor@leeni.uk.xensource.com [Fri, 3 Mar 2006 14:56:34 +0000 (15:56 +0100)]
Merged.

20 years agoWait for the devices configured at start-up, before allowing the boot to
emellor@leeni.uk.xensource.com [Fri, 3 Mar 2006 14:56:03 +0000 (15:56 +0100)]
Wait for the devices configured at start-up, before allowing the boot to
proceed.  This avoids the race (bug #549) that would result in the infamous
VFS: Cannot open root device "sda1" or unknown-block(0,0) message even when
the hotplug layer had succeeded to configure the device.

Note that The Infamous Message has many possible root causes -- this change
only fixes one of them.  This particular root cause is characterised by
successful boots interleaved with unsuccessful ones, and diagnose.py showing
both front and backend drivers in the Connected state.

Closes bug #549.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoChange the way that reboot-timeouts are handled. Rather than refreshing the
emellor@leeni.uk.xensource.com [Fri, 3 Mar 2006 14:41:56 +0000 (15:41 +0100)]
Change the way that reboot-timeouts are handled.  Rather than refreshing the
list of domains each time XendDomainInfo.refresh is called, and spawning
threads for each shutdown still in progress, we watch the control/shutdown
node and spawn just the one thread immediately.  When the daemon starts (say
after a crash) all domains are checked for entries in the store indicating a
reboot in progress.

This avoids a large cost on the store and in threads when the list of domains
is refreshed.  This happens every time the server is queried, so the cost can
be quite high.  It's especially a high cost when using xm shutdown -a -w --
this operation should perform a lot better now.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoAdded further integrity checking, this time checking for duplicate directory
emellor@leeni.uk.xensource.com [Fri, 3 Mar 2006 14:37:28 +0000 (15:37 +0100)]
Added further integrity checking, this time checking for duplicate directory
entries and for orphaned nodes in the database.

Added two flags, -R and -L, to disable the recovery code and the remove of
/local at start-up.  This makes it much easier to analyse corrupted tdb files.

Added some missing talloc_free calls in the previous integrity checking code.

Removed the transaction handle from the trace_io message -- unfortunately,
the transaction is always null at this point, as it's not yet been looked up.

Signed-off-by: Ewan Mellor <ewan@xensource.com>
20 years agoCope when the filename returned by losetup for an existing loop device is not
emellor@leeni.uk.xensource.com [Fri, 3 Mar 2006 14:32:42 +0000 (15:32 +0100)]
Cope when the filename returned by losetup for an existing loop device is not
fully qualified.  In this case, the readlink -f call to canonicalise that name
fails.

Closes bug #553.

Signed-off-by: Ewan Mellor <ewan@xensource.com>